package co.laomag.coffee.service.admins;

import co.laomag.coffee.model.entity.AdRole;
import co.laomag.coffee.model.entity.Admin;
import co.laomag.coffee.model.vo.Message;
import org.springframework.web.bind.annotation.RequestBody;

/**
 * @author 马泽朋
 * @version 1.0
 * @date 2020/4/18 下午 2:17
 */
public interface AdminService {
    /**
     * 查询管理员
     * @param phone 手机号,账号
     * @param password 密码
     * @return Message
     */
    Message administratorLogin(String phone, String password);

    /**
     * 新增管理员
     * @param admin 管理员对象
     * @return 成功大于0,失败小于0
     */
    Message addAdministrator(Admin admin) throws Exception;

    /**
     * 更新用户信息
     * @param admin
     * @return
     */
    Message update(@RequestBody Admin admin) throws Exception;

    /**
     * 根据前端传来的Token查询用户权限
     * @param token
     * @return
     */
    Message getRouters(String token);

    /**
     * 根据用户ID查询到用户角色
     * @param aid
     * @return
     */
    AdRole getRoles(int aid);

    Message getRoles();

    /**
     * 查询所有的管理员带分页
     * @param title 查询参数
     * @param page 第几页
     * @param limit 每页记录数
     * @return 结果
     */
    Message getAdminList(String title, int page, int limit,String token);


    /**
     * 删除管理员
     * @param admin
     * @return
     */
    Message deleteAdmin(Admin admin) throws Exception;
}
